// File:    Proyecto.cs
// Author:  bigmaster
// Created: viernes, 22 de noviembre de 2013 1:14:56
// Purpose: Definition of Class Proyecto

using System;

public class Proyecto
{
   public int idProyecto;
   public string nombreProyecto;
   public bool visibilidadProyecto;
   
   public System.Collections.Generic.List<Proyecto> proyectoRaiz;
   
   /// <summary>
   /// Property for collection of Proyecto
   /// </summary>
   /// <pdGenerated>Default opposite class collection property</pdGenerated>
   public System.Collections.Generic.List<Proyecto> ProyectoRaiz
   {
      get
      {
         if (proyectoRaiz == null)
            proyectoRaiz = new System.Collections.Generic.List<Proyecto>();
         return proyectoRaiz;
      }
      set
      {
         RemoveAllProyectoRaiz();
         if (value != null)
         {
            foreach (Proyecto oProyecto in value)
               AddProyectoRaiz(oProyecto);
         }
      }
   }
   
   /// <summary>
   /// Add a new Proyecto in the collection
   /// </summary>
   /// <pdGenerated>Default Add</pdGenerated>
   public void AddProyectoRaiz(Proyecto newProyecto)
   {
      if (newProyecto == null)
         return;
      if (this.proyectoRaiz == null)
         this.proyectoRaiz = new System.Collections.Generic.List<Proyecto>();
      if (!this.proyectoRaiz.Contains(newProyecto))
         this.proyectoRaiz.Add(newProyecto);
   }
   
   /// <summary>
   /// Remove an existing Proyecto from the collection
   /// </summary>
   /// <pdGenerated>Default Remove</pdGenerated>
   public void RemoveProyectoRaiz(Proyecto oldProyecto)
   {
      if (oldProyecto == null)
         return;
      if (this.proyectoRaiz != null)
         if (this.proyectoRaiz.Contains(oldProyecto))
            this.proyectoRaiz.Remove(oldProyecto);
   }
   
   /// <summary>
   /// Remove all instances of Proyecto from the collection
   /// </summary>
   /// <pdGenerated>Default removeAll</pdGenerated>
   public void RemoveAllProyectoRaiz()
   {
      if (proyectoRaiz != null)
         proyectoRaiz.Clear();
   }
   public System.Collections.Generic.List<Incidencia> proyecto_Incidencia;
   
   /// <summary>
   /// Property for collection of Incidencia
   /// </summary>
   /// <pdGenerated>Default opposite class collection property</pdGenerated>
   public System.Collections.Generic.List<Incidencia> Proyecto_Incidencia
   {
      get
      {
         if (proyecto_Incidencia == null)
            proyecto_Incidencia = new System.Collections.Generic.List<Incidencia>();
         return proyecto_Incidencia;
      }
      set
      {
         RemoveAllProyecto_Incidencia();
         if (value != null)
         {
            foreach (Incidencia oIncidencia in value)
               AddProyecto_Incidencia(oIncidencia);
         }
      }
   }
   
   /// <summary>
   /// Add a new Incidencia in the collection
   /// </summary>
   /// <pdGenerated>Default Add</pdGenerated>
   public void AddProyecto_Incidencia(Incidencia newIncidencia)
   {
      if (newIncidencia == null)
         return;
      if (this.proyecto_Incidencia == null)
         this.proyecto_Incidencia = new System.Collections.Generic.List<Incidencia>();
      if (!this.proyecto_Incidencia.Contains(newIncidencia))
         this.proyecto_Incidencia.Add(newIncidencia);
   }
   
   /// <summary>
   /// Remove an existing Incidencia from the collection
   /// </summary>
   /// <pdGenerated>Default Remove</pdGenerated>
   public void RemoveProyecto_Incidencia(Incidencia oldIncidencia)
   {
      if (oldIncidencia == null)
         return;
      if (this.proyecto_Incidencia != null)
         if (this.proyecto_Incidencia.Contains(oldIncidencia))
            this.proyecto_Incidencia.Remove(oldIncidencia);
   }
   
   /// <summary>
   /// Remove all instances of Incidencia from the collection
   /// </summary>
   /// <pdGenerated>Default removeAll</pdGenerated>
   public void RemoveAllProyecto_Incidencia()
   {
      if (proyecto_Incidencia != null)
         proyecto_Incidencia.Clear();
   }

}